import type { GeneratedEtsLibFile } from "../../types/generated";

export const FILE: GeneratedEtsLibFile = {
  path: 'ets/api/application/UIAbilityContext.d.ts',
  content: "/*\n * Copyright (c) 2021-2024 Huawei Device Co., Ltd.\n * Licensed under the Apache License, Version 2.0 (the \"License\"),\n * you may not use this file except in compliance with the License.\n * You may obtain a copy of the License at\n *\n *     http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software\n * distributed under the License is distributed on an \"AS IS\" BASIS,\n * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\n * See the License for the specific language governing permissions and\n * limitations under the License.\n */\n/**\n * @file\n * @kit AbilityKit\n */\nimport { AbilityInfo } from '../bundleManager/AbilityInfo';\nimport { AbilityResult } from '../ability/abilityResult';\nimport { AsyncCallback } from '../@ohos.base';\nimport { ConnectOptions } from '../ability/connectOptions';\nimport { HapModuleInfo } from '../bundleManager/HapModuleInfo';\nimport Context from './Context';\nimport Want from '../@ohos.app.ability.Want';\nimport StartOptions from '../@ohos.app.ability.StartOptions';\nimport OpenLinkOptions from '../@ohos.app.ability.OpenLinkOptions';\nimport { Configuration } from '../@ohos.app.ability.Configuration';\nimport { Caller } from '../@ohos.app.ability.UIAbility';\nimport image from '../@ohos.multimedia.image';\nimport dialogRequest from '../@ohos.app.ability.dialogRequest';\nimport AbilityConstant from '../@ohos.app.ability.AbilityConstant';\nimport type AbilityStartCallback from './AbilityStartCallback';\nimport window from '../@ohos.window';\nimport type AtomicServiceOptions from '../@ohos.app.ability.AtomicServiceOptions';\nimport type ConfigurationConstant from '../@ohos.app.ability.ConfigurationConstant';\nimport type UIServiceProxy from './UIServiceProxy';\nimport type UIServiceExtensionConnectCallback from './UIServiceExtensionConnectCallback';\n/**\n * The context of an ability. It allows access to ability-specific resources.\n *\n * @extends Context\n * @syscap SystemCapability.Ability.AbilityRuntime.Core\n * @stagemodelonly\n * @since 9\n */\n/**\n * The context of an ability. It allows access to ability-specific resources.\n *\n * @extends Context\n * @syscap SystemCapability.Ability.AbilityRuntime.Core\n * @stagemodelonly\n * @crossplatform\n * @since 10\n */\n/**\n * The context of an ability. It allows access to ability-specific resources.\n *\n * @extends Context\n * @syscap SystemCapability.Ability.AbilityRuntime.Core\n * @stagemodelonly\n * @crossplatform\n * @atomicservice\n * @since 11\n */\nexport default class UIAbilityContext extends Context {\n    /**\n     * Indicates configuration information about an ability.\n     *\n     * @type { AbilityInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Indicates configuration information about an ability.\n     *\n     * @type { AbilityInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Indicates configuration information about an ability.\n     *\n     * @type { AbilityInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    abilityInfo: AbilityInfo;\n    /**\n     * Indicates configuration information about the module.\n     *\n     * @type { HapModuleInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Indicates configuration information about the module.\n     *\n     * @type { HapModuleInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Indicates configuration information about the module.\n     *\n     * @type { HapModuleInfo }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    currentHapModuleInfo: HapModuleInfo;\n    /**\n     * Indicates configuration information.\n     *\n     * @type { Configuration }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Indicates configuration information.\n     *\n     * @type { Configuration }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Indicates configuration information.\n     *\n     * @type { Configuration }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    config: Configuration;\n    /**\n     * Indicates windowStage information.\n     * Exists from onWindowStageCreate lifecycle, does not exist from onWindowStageDestroy lifecycle.\n     *\n     * @type { window.WindowStage }\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    windowStage: window.WindowStage;\n    /**\n     * Starts a new ability.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 14\n     */\n    startAbility(want: Want, callback: AsyncCallback<void>): void;\n    /**\n     * Starts a new ability.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 18\n     */\n    startAbility(want: Want, options: StartOptions, callback: AsyncCallback<void>): void;\n    /**\n     * Starts a new ability.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 9\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    /**\n     * Starts a new ability. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @throws { BusinessError } 16000068 - The ability is already running.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16300003 - The target application is not the current application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 18\n     */\n    startAbility(want: Want, options?: StartOptions): Promise<void>;\n    /**\n     * Starts a new ability by implicit want. If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { string } link - Indicates the ability to start.\n     * @param { OpenLinkOptions } [options] - Indicates the open link options.\n     * @param { AsyncCallback<AbilityResult> } [callback] - The callback is used to return the ability result.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    openLink(link: string, options?: OpenLinkOptions, callback?: AsyncCallback<AbilityResult>): Promise<void>;\n    /**\n     * Get the caller object of the startup capability.\n     *\n     * @permission ohos.permission.ABILITY_BACKGROUND_COMMUNICATION\n     * @param { Want } want - Indicates the ability to start.\n     * @returns { Promise<Caller> } Returns the Caller interface.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Get the caller object of the startup capability.\n     * If the local device starts a new ability, you need to apply for permission:ohos.permission.ABILITY_BACKGROUND_COMMUNICATION to use this method.\n     * If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @permission ohos.permission.ABILITY_BACKGROUND_COMMUNICATION\n     * @param { Want } want - Indicates the ability to start.\n     * @returns { Promise<Caller> } Returns the Caller interface.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Get the caller object of the startup capability in cross-device.\n     *\n     * If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @permission ohos.permission.DISTRIBUTED_DATASYNC\n     * @param { Want } want - Indicates the ability to start.\n     * @returns { Promise<Caller> } Returns the Caller interface.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 11\n     */\n    /**\n     * Get the caller object of the startup capability in cross-device.\n     *\n     * If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @permission ohos.permission.DISTRIBUTED_DATASYNC\n     * @param { Want } want - Indicates the ability to start.\n     * @returns { Promise<Caller> } Returns the Caller interface.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 12\n     */\n    /**\n     * Get the caller object of the startup capability in cross-device.\n     *\n     * If the caller application is in foreground, you can use this method to start ability;\n     * If the caller application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @permission ohos.permission.DISTRIBUTED_DATASYNC\n     * @param { Want } want - Indicates the ability to start.\n     * @returns { Promise<Caller> } Returns the Caller interface.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 14\n     */\n    startAbilityByCall(want: Want): Promise<Caller>;\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 18\n     */\n    startAbilityForResult(want: Want, callback: AsyncCallback<AbilityResult>): void;\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } options - Indicates the start options.\n     * @param { AsyncCallback<AbilityResult> } callback - The callback is used to return the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 18\n     */\n    startAbilityForResult(want: Want, options: StartOptions, callback: AsyncCallback<AbilityResult>): void;\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    /**\n     * Starts an ability and returns the execution result when the ability is destroyed. If the caller application is in foreground,\n     * you can use this method to start ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     * If the target ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - Indicates the ability to start.\n     * @param { StartOptions } [options] - Indicates the start options.\n     * @returns { Promise<AbilityResult> } Returns the result of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000018 - Redirection to a third-party application is not allowed in API version 11 or later.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16000071 - App clone is not supported.\n     * @throws { BusinessError } 16000072 - App clone or multi-instance is not supported.\n     * @throws { BusinessError } 16000073 - The app clone index is invalid.\n     * @throws { BusinessError } 16000076 - The app instance key is invalid.\n     * @throws { BusinessError } 16000077 - The number of app instances reaches the limit.\n     * @throws { BusinessError } 16000078 - The multi-instance is not supported.\n     * @throws { BusinessError } 16000079 - The APP_INSTANCE_KEY cannot be specified.\n     * @throws { BusinessError } 16000080 - Creating a new instance is not supported.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 18\n     */\n    startAbilityForResult(want: Want, options?: StartOptions): Promise<AbilityResult>;\n    /**\n     * Destroys this Page ability.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelf.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Destroys this Page ability.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelf.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Destroys this Page ability.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelf.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    terminateSelf(callback: AsyncCallback<void>): void;\n    /**\n     * Destroys this Page ability.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Destroys this Page ability.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @since 10\n     */\n    /**\n     * Destroys this Page ability.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 11\n     */\n    terminateSelf(): Promise<void>;\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelfWithResult.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelfWithResult.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @param { AsyncCallback<void> } callback - The callback of terminateSelfWithResult.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    terminateSelfWithResult(parameter: AbilityResult, callback: AsyncCallback<void>): void;\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Destroys the Page ability while returning the specified result code and data to the caller.\n     *\n     * @param { AbilityResult } parameter - Indicates the result to return.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    terminateSelfWithResult(parameter: AbilityResult): Promise<void>;\n    /**\n     * Return to caller application with specified result code and data while not destroying current ability.\n     * If the current application is in the background, you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     *\n     * @param { AbilityResult } abilityResult - Indicates the result to return.\n     * @param { string } requestCode - Indicates the request code of caller ability.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000074 - The caller does not exist.\n     * @throws { BusinessError } 16000075 - BackToCaller is not supported.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    backToCallerAbilityWithResult(abilityResult: AbilityResult, requestCode: string): Promise<void>;\n    /**\n     * Connects the current ability to an service extension ability.\n     *\n     * @param { Want } want - The element name of the service ability\n     * @param { ConnectOptions } options - The remote object instance\n     * @returns { number } Returns the number code of the ability connected\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Connects the current ability to an service extension ability.\n     * If the target service extension ability is visible, you can connect the target service extension ability;\n     * If the target service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to connect target invisible service extension ability.\n     * If the target service extension ability is in cross-device, you need to apply for permission:ohos.permission.DISTRIBUTED_DATASYNC.\n     *\n     * @param { Want } want - The element name of the service ability\n     * @param { ConnectOptions } options - The remote object instance\n     * @returns { number } Returns the number code of the ability connected\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    connectServiceExtensionAbility(want: Want, options: ConnectOptions): number;\n    /**\n     * Disconnect an ability from a service extension, in contrast to {@link connectAbility}.\n     *\n     * @param { number } connection - The number code of the ability connected\n     * @param { AsyncCallback<void> } callback - The callback of disconnectAbility.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    disconnectServiceExtensionAbility(connection: number, callback: AsyncCallback<void>): void;\n    /**\n     * Disconnect an ability from a service extension, in contrast to {@link connectAbility}.\n     *\n     * @param { number } connection - The number code of the ability connected\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    disconnectServiceExtensionAbility(connection: number): Promise<void>;\n    /**\n     * Set mission label of current ability.\n     *\n     * @param { string } label - The label of ability that showed in recent missions.\n     * @param { AsyncCallback<void> } callback - The callback of setMissionLabel.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Set mission label of current ability.\n     *\n     * @param { string } label - The label of ability that showed in recent missions.\n     * @param { AsyncCallback<void> } callback - The callback of setMissionLabel.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    setMissionLabel(label: string, callback: AsyncCallback<void>): void;\n    /**\n     * Set mission label of current ability.\n     *\n     * @param { string } label - The label of ability that showed in recent missions.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Set mission label of current ability.\n     *\n     * @param { string } label - The label of ability that showed in recent missions.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    setMissionLabel(label: string): Promise<void>;\n    /**\n     * Set mission continue state of current ability.\n     *\n     * @param { AbilityConstant.ContinueState } state - The mission continue state of current ability.\n     * @param { AsyncCallback<void> } callback - The callback of setMissionContinueState.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Set mission continue state of current ability.\n     *\n     * @param { AbilityConstant.ContinueState } state - The mission continue state of current ability.\n     * @param { AsyncCallback<void> } callback - The callback of setMissionContinueState.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    setMissionContinueState(state: AbilityConstant.ContinueState, callback: AsyncCallback<void>): void;\n    /**\n     * Set mission continue state of current ability.\n     *\n     * @param { AbilityConstant.ContinueState } state - The mission continue state of current ability.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Set mission continue state of current ability.\n     *\n     * @param { AbilityConstant.ContinueState } state - The mission continue state of current ability.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    setMissionContinueState(state: AbilityConstant.ContinueState): Promise<void>;\n    /**\n     * Restore window stage data in ability continuation\n     *\n     * @param { LocalStorage } localStorage - the storage data used to restore window stage\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Restore window stage data in ability continuation\n     *\n     * @param { LocalStorage } localStorage - the storage data used to restore window stage\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    restoreWindowStage(localStorage: LocalStorage): void;\n    /**\n     * Check to see ability is in terminating state.\n     *\n     * @returns { boolean } Returns true when ability is in terminating state, else returns false.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Check to see ability is in terminating state.\n     *\n     * @returns { boolean } Returns true when ability is in terminating state, else returns false.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    isTerminating(): boolean;\n    /**\n     * Requests certain permissions from the system.\n     *\n     * @param { Want } want - Indicates the dialog service to start.\n     * @param { AsyncCallback<dialogRequest.RequestResult> } result - The callback is used to return the request result.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts a service extension ability that supports modal dialog. If the caller application is in foreground,\n     * you can use this method to start service extension ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target service extension ability is visible, you can start the target service extension ability;\n     * If the target service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible service extension ability.\n     *\n     * @param { Want } want - Indicates the dialog service to start.\n     * @param { AsyncCallback<dialogRequest.RequestResult> } result - The callback is used to return the request result.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    requestDialogService(want: Want, result: AsyncCallback<dialogRequest.RequestResult>): void;\n    /**\n     * Requests certain permissions from the system.\n     *\n     * @param { Want } want - Indicates the dialog service to start.\n     * @returns { Promise<dialogRequest.RequestResult> } Returns the request result.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 9\n     */\n    /**\n     * Starts a service extension ability that supports modal dialog. If the caller application is in foreground,\n     * you can use this method to start service extension ability; If the caller application is in the background,\n     * you need to apply for permission:ohos.permission.START_ABILITIES_FROM_BACKGROUND.\n     * If the target service extension ability is visible, you can start the target service extension ability;\n     * If the target service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible service\n     * extension ability.\n     *\n     * @param { Want } want - Indicates the dialog service to start.\n     * @returns { Promise<dialogRequest.RequestResult> } Returns the request result.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000009 - An ability cannot be started or stopped in Wukong mode.\n     * @throws { BusinessError } 16000010 - The call with the continuation and prepare continuation flag is forbidden.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    requestDialogService(want: Want): Promise<dialogRequest.RequestResult>;\n    /**\n     * Report to system when the ability is drawn completed.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 10\n     */\n    /**\n     * Report to system when the ability is drawn completed.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Report to system when the ability is drawn completed.\n     *\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @crossplatform\n     * @atomicservice\n     * @since 12\n     */\n    reportDrawnCompleted(callback: AsyncCallback<void>): void;\n    /**\n     * Starts the UIAbility or UIExtensionAbility by type.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     *\n     * @param { string } type - The type of target ability.\n     * @param { Record<string, Object> } wantParam - Indicates the want parameter.\n     * @param { AbilityStartCallback } abilityStartCallback - Indicates the abilityStartCallback.\n     * @param { AsyncCallback<void> } callback - The callback of startAbility.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified.\n     * <br>2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n    * Starts the UIAbility or UIExtensionAbility by type.\n    * If the caller application is in the background, it is not allowed to call this interface.\n    *\n    * @param { string } type - The type of target ability.\n    * @param { Record<string, Object> } wantParam - Indicates the want parameter.\n    * @param { AbilityStartCallback } abilityStartCallback - Indicates the abilityStartCallback.\n    * @param { AsyncCallback<void> } callback - The callback of startAbility.\n    * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified.\n    * <br>2.Incorrect parameter types.\n    * @throws { BusinessError } 16000050 - Internal error.\n    * @syscap SystemCapability.Ability.AbilityRuntime.Core\n    * @stagemodelonly\n    * @atomicservice\n    * @since 12\n    */\n    startAbilityByType(type: string, wantParam: Record<string, Object>, abilityStartCallback: AbilityStartCallback, callback: AsyncCallback<void>): void;\n    /**\n     * Starts the UIAbility or UIExtensionAbility by type.\n     * If the target ability is visible, you can start the target ability; If the target ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible ability.\n     *\n     * @param { string } type - The type of target ability.\n     * @param { Record<string, Object> } wantParam - Indicates the want parameter.\n     * @param { AbilityStartCallback } abilityStartCallback - Indicates the abilityStartCallback.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified.\n     * <br>2.Incorrect parameter types.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 11\n     */\n    /**\n     * Starts the UIAbility or UIExtensionAbility by type.\n     * If the caller application is in the background, it is not allowed to call this interface.\n     *\n     * @param { string } type - The type of target ability.\n     * @param { Record<string, Object> } wantParam - Indicates the want parameter.\n     * @param { AbilityStartCallback } abilityStartCallback - Indicates the abilityStartCallback.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified.\n     * <br>2.Incorrect parameter types.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    startAbilityByType(type: string, wantParam: Record<string, Object>, abilityStartCallback: AbilityStartCallback): Promise<void>;\n    /**\n     * Full-screen pop-us startup atomic service.\n     *\n     * @param { string } appId - Globally unique identifier of an application, which is allocated by the cloud.\n     * @param { AtomicServiceOptions } [options] - Indicates the atomic service start options.\n     * @returns { Promise<AbilityResult> } Returns the result of openAtomicService.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified. 2.Incorrect parameter types.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000003 - The specified ID does not exist.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000053 - The ability is not on the top of the UI.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    openAtomicService(appId: string, options?: AtomicServiceOptions): Promise<AbilityResult>;\n    /**\n     * Move current ability to background.\n     *\n     * @returns { Promise<void> } Returns the result of moveAbilityToBackground.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000061 - Operation not supported.\n     * @throws { BusinessError } 16000065 - The API can be called only when the ability is running in the foreground.\n     * @throws { BusinessError } 16000066 - An ability cannot switch to the foreground or background in Wukong mode.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 12\n     */\n    moveAbilityToBackground(): Promise<void>;\n    /**\n     * Show current ability. The ability needs to be started by UIAbilityContext.startAbility\n     * with input parameter options.processMode setting to NEW_PROCESS_ATTACH_TO_STATUS_BAR_ITEM.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 12\n     */\n    showAbility(): Promise<void>;\n    /**\n     * Hide current ability. The ability needs to be started by UIAbilityContext.startAbility\n     * with input parameter options.processMode setting to NEW_PROCESS_ATTACH_TO_STATUS_BAR_ITEM.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000067 - The StartOptions check failed.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 12\n     */\n    hideAbility(): Promise<void>;\n    /**\n     * Set whether restoration is enabled when the UIAbility is switched back from the background.\n     *\n     * @param { boolean } enabled - The flag that indicates whether restoration is enabled when the UIAbility is switched\n     * back from the background.\n     * @throws { BusinessError } 401 - If the input parameter is not valid parameter.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    setRestoreEnabled(enabled: boolean): void;\n    /**\n     * Starts a UI service extension ability.\n     * If the target UI service extension ability is visible, you can start the target UI service extension ability;\n     * If the target UI service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible UI service extension ability.\n     *\n     * @param { Want } want - Indicates the want info to start.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;\n     * 2. Incorrect parameter types; 3. Parameter verification failed.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16200001 - The caller has been released.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    startUIServiceExtensionAbility(want: Want): Promise<void>;\n    /**\n     * Connects to a UI service extension ability.\n     * If the target UI service extension ability is visible, you can connect the target UI service extension ability;\n     * If the target UI service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to connect target invisible UI service extension ability.\n     *\n     * @param { Want } want - Indicates the want info to connect.\n     * @param { UIServiceExtensionConnectCallback } callback - The callback of connection.\n     * @returns { Promise<UIServiceProxy> } The promise to get UIServiceProxy.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;\n     * 2. Incorrect parameter types; 3. Parameter verification failed.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000055 - Installation-free timed out.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    connectUIServiceExtensionAbility(want: Want, callback: UIServiceExtensionConnectCallback): Promise<UIServiceProxy>;\n    /**\n     * Disconnects from a UI service extension, in contrast to {@link connectUIServiceExtensionAbility}.\n     *\n     * @param { UIServiceProxy } proxy - The UI service proxy return by connectUIServiceExtensionAbility.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1. Mandatory parameters are left unspecified;\n     * 2. Incorrect parameter types; 3. Parameter verification failed.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 14\n     */\n    disconnectUIServiceExtensionAbility(proxy: UIServiceProxy): Promise<void>;\n    /**\n     * Set label and icon for current ability instance.\n     * You need to apply for permission:ohos.permission.SET_ABILITY_INSTANCE_INFO to call this function.\n     *\n     * @permission ohos.permission.SET_ABILITY_INSTANCE_INFO\n     * @param { string } label - The label of ability to be displayed in the Task Center and shortcut bar.\n     * @param { image.PixelMap } icon - The icon of ability to be displayed in the Task Center and shortcut bar.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 201 - The application does not have permission to call the interface.\n     * @throws { BusinessError } 401 - Parameter error. Possible causes: 1.Mandatory parameters are left unspecified.\n     * 2.Incorrect parameter types. 3. Parameter verification failed.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 15\n     */\n    setAbilityInstanceInfo(label: string, icon: image.PixelMap): Promise<void>;\n    /**\n     * Revoke delegator.\n     *\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not support.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000065 - The API can be called only when the ability is running in the foreground.\n     * @throws { BusinessError } 16000084 - Only DelegatorAbility is allowed to call this API, and only once.\n     * @throws { BusinessError } 16000085 - An error occurred during the interaction between the ability and window.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 17\n     */\n    revokeDelegator(): Promise<void>;\n    /**\n     * Set colorMode of uiability.\n     *\n     * @param { ConfigurationConstant.ColorMode } colorMode - Color mode.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @atomicservice\n     * @since 18\n     */\n    setColorMode(colorMode: ConfigurationConstant.ColorMode): void;\n    /**\n     * Starts a new app service extension ability.\n     * If the target app service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to start target invisible app service extension ability.\n     *\n     * @param { Want } want - Indicates the want info to start.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000012 - The application is controlled.\n     * @throws { BusinessError } 16000013 - The application is controlled by EDM.\n     * @throws { BusinessError } 16000019 - No matching ability is found.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000200 - The caller is not in the appIdentifierAllowList of the target application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 20\n     */\n    startAppServiceExtensionAbility(want: Want): Promise<void>;\n    /**\n     * Stops an app service extension ability.\n     * If the target app service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to stop target invisible app service extension ability.\n     *\n     * @param { Want } want - Indicates the want info to start.\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000200 - The caller is not in the appIdentifierAllowList of the target application.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 20\n     */\n    stopAppServiceExtensionAbility(want: Want): Promise<void>;\n    /**\n     * Connects current ability to an app service extension ability.\n     * If the target app service extension ability is invisible,\n     * you need to apply for permission:ohos.permission.START_INVISIBLE_ABILITY to connect target invisible app service extension ability.\n     *\n     * @param { Want } want - The element name of the app service ability\n     * @param { ConnectOptions } options - The remote object instance\n     * @returns { number } Returns the number code of the ability connected\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000001 - The specified ability does not exist.\n     * @throws { BusinessError } 16000002 - Incorrect ability type.\n     * @throws { BusinessError } 16000004 - Cannot start an invisible component.\n     * @throws { BusinessError } 16000005 - The specified process does not have the permission.\n     * @throws { BusinessError } 16000006 - Cross-user operations are not allowed.\n     * @throws { BusinessError } 16000008 - The crowdtesting application expires.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @throws { BusinessError } 16000201 - The target service has not been started yet.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 20\n     */\n    connectAppServiceExtensionAbility(want: Want, options: ConnectOptions): number;\n    /**\n     * Disconnect current ability from an app service extension, in contrast to {@link connectAppServiceExtensionAbility}.\n     *\n     * @param { number } connection - The number code of the ability connected\n     * @returns { Promise<void> } The promise returned by the function.\n     * @throws { BusinessError } 801 - Capability not supported.\n     * @throws { BusinessError } 16000011 - The context does not exist.\n     * @throws { BusinessError } 16000050 - Internal error.\n     * @syscap SystemCapability.Ability.AbilityRuntime.Core\n     * @stagemodelonly\n     * @since 20\n     */\n    disconnectAppServiceExtensionAbility(connection: number): Promise<void>;\n}\n",
}
export default FILE;